Skip to content

ci(qt): cap Qt WebEngine leak gate with timeout-minutes: 20 - #170

Merged
frstrtr merged 1 commit into
masterfrom
ci-steward/qt-leak-gate-timeout
Jun 19, 2026
Merged

ci(qt): cap Qt WebEngine leak gate with timeout-minutes: 20#170
frstrtr merged 1 commit into
masterfrom
ci-steward/qt-leak-gate-timeout

Conversation

@frstrtr

@frstrtr frstrtr commented Jun 18, 2026

Copy link
Copy Markdown
Owner

Problem

The qt-webengine leak gate wraps its run in timeout 180, but that only SIGTERMs the immediate child. QtWebEngine spawns Chromium zygote/helper processes that survive, hold the xvfb-run pipe open, and hang the job to the 360-min runner default. Observed cost: ~35 min × 3 today; #165 had to be closed/reopened to clear a stuck run.

Fix

Add a job-level timeout-minutes: 20 so the runner force-kills the whole process tree when the gate hangs. A healthy run (apt + Qt harness build + 180s harness) finishes well under 20 min; a hang now costs ~20 min instead of hours.

Scope: one line (+ comment) in build.yml. continue-on-error is unchanged — the gate stays advisory during Qt bring-up.

Merge-gated: holding for operator push-approval.

The leak harness wraps the run in `timeout 180`, but QtWebEngine spawns
Chromium zygote/helper child processes that survive when timeout SIGTERMs
only the immediate child. The orphans keep the xvfb-run pipe open, so the
job hangs to the 360-min runner default instead of finishing. A job-level
timeout-minutes makes the runner force-kill the whole process tree, so a
hung gate costs ~20 min, not hours. continue-on-error semantics are
unchanged (gate stays advisory during Qt bring-up).
@frstrtr frstrtr closed this Jun 18, 2026
@frstrtr frstrtr reopened this Jun 18, 2026
@frstrtr frstrtr closed this Jun 19, 2026
@frstrtr frstrtr reopened this Jun 19, 2026
@frstrtr
frstrtr merged commit 633e76b into master Jun 19, 2026
46 of 48 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant